
const fn = function() {
    try {
        var e = {};
        Object.defineProperty(e, "passive", { get: function() {!0 } }), window.addEventListener("test-passive", null, e)
    } catch (e) {}
    var n = Object.prototype.hasOwnProperty;

    function i(e, i) { return n.call(e, i) }
    var t = [];

    function o() { return window.__dcloud_weex_postMessage || window.__dcloud_weex_ }
    var a = function(e, n) {
            var i = { options: { timestamp: +new Date }, name: e, arg: n };
            if (window.__uniapp_x_postMessage || window.__uniapp_x_) {
                if ("postMessage" === e) { var a = { data: [n] }; return window.__uniapp_x_postMessage ? window.__uniapp_x_postMessage(a) : window.__uniapp_x_.postMessage(JSON.stringify(a)) }
                var r = { type: "WEB_INVOKE_APPSERVICE", args: { data: i, webviewIds: t } };
                window.__uniapp_x_postMessage ? window.__uniapp_x_postMessageToService(r) : window.__uniapp_x_.postMessageToService(JSON.stringify(r))
            } else if (o()) {
                if ("postMessage" === e) { var d = { data: [n] }; return window.__dcloud_weex_postMessage ? window.__dcloud_weex_postMessage(d) : window.__dcloud_weex_.postMessage(JSON.stringify(d)) }
                var s = { type: "WEB_INVOKE_APPSERVICE", args: { data: i, webviewIds: t } };
                window.__dcloud_weex_postMessage ? window.__dcloud_weex_postMessageToService(s) : window.__dcloud_weex_.postMessageToService(JSON.stringify(s))
            } else {
                if (!window.plus) return window.parent.postMessage({ type: "WEB_INVOKE_APPSERVICE", data: i, pageId: "" }, "*");
                if (0 === t.length) {
                    var w = plus.webview.currentWebview();
                    if (!w) throw new Error("plus.webview.currentWebview() is undefined");
                    var u = w.parent(),
                        g = "";
                    g = u ? u.id : w.id, t.push(g)
                }
                if (plus.webview.getWebviewById("__uniapp__service")) plus.webview.postMessageToUniNView({ type: "WEB_INVOKE_APPSERVICE", args: { data: i, webviewIds: t } }, "__uniapp__service");
                else {
                    var v = JSON.stringify(i);
                    plus.webview.getLaunchWebview().evalJS('UniPlusBridge.subscribeHandler("'.concat("WEB_INVOKE_APPSERVICE", '",').concat(v, ",").concat(JSON.stringify(t), ");"))
                }
            }
        },
        r = {
            navigateTo: function() {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
                    n = e.url;
                a("navigateTo", { url: encodeURI(n) })
            },
            navigateBack: function() {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
                    n = e.delta;
                a("navigateBack", { delta: parseInt(n) || 1 })
            },
            switchTab: function() {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
                    n = e.url;
                a("switchTab", { url: encodeURI(n) })
            },
            reLaunch: function() {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
                    n = e.url;
                a("reLaunch", { url: encodeURI(n) })
            },
            redirectTo: function() {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
                    n = e.url;
                a("redirectTo", { url: encodeURI(n) })
            },
            getEnv: function(e) { o() ? e({ nvue: !0 }) : window.plus ? e({ plus: !0 }) : e({ h5: !0 }) },
            postMessage: function() {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
                a("postMessage", e.data || {})
            }
        },
        d = /uni-app/i.test(navigator.userAgent),
        s = /Html5Plus/i.test(navigator.userAgent),
        w = /complete|loaded|interactive/;
    var u = window.my && navigator.userAgent.indexOf(["t", "n", "e", "i", "l", "C", "y", "a", "p", "i", "l", "A"].reverse().join("")) > -1;
    var g = window.swan && window.swan.webView && /swan/i.test(navigator.userAgent);
    var v = window.qq && window.qq.miniProgram && /QQ/i.test(navigator.userAgent) && /miniProgram/i.test(navigator.userAgent);
    var c = window.tt && window.tt.miniProgram && /toutiaomicroapp/i.test(navigator.userAgent);
    var p = window.wx && window.wx.miniProgram && /micromessenger/i.test(navigator.userAgent) && /miniProgram/i.test(navigator.userAgent);
    var _ = window.qa && /quickapp/i.test(navigator.userAgent);
    var m = window.ks && window.ks.miniProgram && /micromessenger/i.test(navigator.userAgent) && /miniProgram/i.test(navigator.userAgent);
    var f = window.tt && window.tt.miniProgram && /Lark|Feishu/i.test(navigator.userAgent);
    var l = window.jd && window.jd.miniProgram && /micromessenger/i.test(navigator.userAgent) && /miniProgram/i.test(navigator.userAgent);
    var E = window.xhs && window.xhs.miniProgram && /xhsminiapp/i.test(navigator.userAgent);
    for (var x, S = function() { window.UniAppJSBridge = !0, document.dispatchEvent(new CustomEvent("UniAppJSBridgeReady", { bubbles: !0, cancelable: !0 })) }, h = [function(e) { if (d || s) return window.__uniapp_x_postMessage || window.__uniapp_x_ || window.__dcloud_weex_postMessage || window.__dcloud_weex_ ? document.addEventListener("DOMContentLoaded", e) : window.plus && w.test(document.readyState) ? setTimeout(e, 0) : document.addEventListener("plusready", e), r }, function(e) { if (p) return window.WeixinJSBridge && window.WeixinJSBridge.invoke ? setTimeout(e, 0) : document.addEventListener("WeixinJSBridgeReady", e), window.wx.miniProgram }, function(e) { if (v) return window.QQJSBridge && window.QQJSBridge.invoke ? setTimeout(e, 0) : document.addEventListener("QQJSBridgeReady", e), window.qq.miniProgram }, function(e) { if (u) { document.addEventListener("DOMContentLoaded", e); var n = window.my; return { navigateTo: n.navigateTo, navigateBack: n.navigateBack, switchTab: n.switchTab, reLaunch: n.reLaunch, redirectTo: n.redirectTo, postMessage: n.postMessage, getEnv: n.getEnv } } }, function(e) { if (g) return document.addEventListener("DOMContentLoaded", e), window.swan.webView }, function(e) { if (c) return document.addEventListener("DOMContentLoaded", e), window.tt.miniProgram }, function(e) { if (_) { window.QaJSBridge && window.QaJSBridge.invoke ? setTimeout(e, 0) : document.addEventListener("QaJSBridgeReady", e); var n = window.qa; return { navigateTo: n.navigateTo, navigateBack: n.navigateBack, switchTab: n.switchTab, reLaunch: n.reLaunch, redirectTo: n.redirectTo, postMessage: n.postMessage, getEnv: n.getEnv } } }, function(e) { if (m) return window.WeixinJSBridge && window.WeixinJSBridge.invoke ? setTimeout(e, 0) : document.addEventListener("WeixinJSBridgeReady", e), window.ks.miniProgram }, function(e) { if (f) return document.addEventListener("DOMContentLoaded", e), window.tt.miniProgram }, function(e) { if (l) return window.JDJSBridgeReady && window.JDJSBridgeReady.invoke ? setTimeout(e, 0) : document.addEventListener("JDJSBridgeReady", e), window.jd.miniProgram }, function(e) { if (E) return window.xhs.miniProgram }, function(e) { return document.addEventListener("DOMContentLoaded", e), r }], y = 0; y < h.length && !(x = h[y](S)); y++);
    x || (x = {});
    var M = "undefined" != typeof uni ? uni : {};
    if (!M.navigateTo)
        for (var P in x) i(x, P) && (M[P] = x[P]);
    return M.webView = x, M
}

let webUni = fn();